home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-09-02 | 43.8 KB | 1,133 lines |
-
-
- Chapter 13: Miscellaneous 151
-
-
-
-
- 13 Miscellaneous
-
-
- Yup, this is the good old "miscellaneous" chapter, that place where we
- put stuff which either didn't seem to fit into any other chapter, or which
- we figured didn't deserve a chapter of its own. So here we go.
-
-
-
- 13.1 Things to Make Fnordadel Work or Work Better
-
- Most of the programs we mention in this section are available on RT and
- secret. If you can't find them anywhere else, phone one of our systems.
- See Appendix A [Fnordadel Support], page 170.
-
- Here are a few things you will *absolutely need* to avoid trouble:
-
- o If you have a hard drive, TOS 1.4 (or greater, like TOS 1.6 in the
- STE), or both, make sure you have foldr100.prg installed in your AUTO
- boot folder. You may not need foldr100.prg if you have access to
- another program that does a similar function, for example Revolver from
- Intersect Software or the hard drive boot handler supplied with newer
- ICD host adaptor-based hard drives. Both of these products allow you
- to allocate buffers for extra folders, a necessary thing due to bugs in
- TOS. Even if you don't have a hard drive, TOS 1.4 and 1.6 will need
- these extra buffers because of bugs they have.
-
- o If you have TOS 1.4 or greater, you must also have poolfix3.prg
- installed in your `auto' boot folder. These versions of TOS have
- some bugs that are corrected by the poolfix program, so make sure
- it is correctly installed before going any further. We also include
- poolfix4, which is a version of poolfix3 with hacks to permit it to run
- in any position in your auto folder. (poolfix3 likes to be first, but
- so do some other auto programs.) poolfix4 is *NOT* from Atari; it was
- done by somebody else. Therefore, use it at your own risk.
-
- o If you have TOS 1.4 or greater, and wish to run your system with a
- high-speed modem, you will need to install tos14fx2.prg in your AUTO
- folder. This Atari fix solves a glitch with RTS/CTS flow control,
- something fairly necessary at speeds of 9600 bps and higher.
-
- Here are some things you will probably want, to make life nicer:
-
- o If you only have 512K of RAM, you might want to consider getting an
- upgrade to 1MB, especially if you do not own a hard drive. There
- are a lot of things that can make running your system easier and more
- enjoyable, such as RAMdisks and command shells. But they need memory
- to run. Pretty well all models of ST lose about 100K of RAM to GEM and
- TOS. Fnordadel itself needs another 200K or so. On a machine with 512K
- tops, memory can disappear pretty quickly, leaving little or no room
- for the niceties.
-
- o No matter what model of ST you have, and whether you have a hard drive
- or not, if you do not have a new version of TOS (1.4 or 1.6, the latter
- available standard [and only] on the STE machines), then we *highly*
- recommend getting a TOS upgrade. Disk performance is *much* improved
-
-
-
- Chapter 13: Miscellaneous 152
-
-
-
-
- under newer versions of TOS, although if you are running on floppy
- disks you won't notice it much due to their inherently slow access
- times and data transfers rates. The new versions of TOS also provide a
- lot of other enhancements and fixes that are worth having, especially
- if you use the GEM desktop a lot.
-
- o A display ``accelerator'', such as the excellent Quick ST, from Branch
- Always Software, is a useful addition. Early versions of Quick ST
- are available in the public domain, so try to get ahold of a copy
- and try it out. If you like it, you can pick up the commercial
- version for about $20. Quick ST provides a very nice speed-up to all
- screen display operations used in Fnordadel, and many operations used
- in GEM-based programs as well.
-
-
-
- 13.2 Logging and Debugging
-
- Fnordadel has various ways of logging its actions for your later
- perusal. They include the call-log and the net-log. In addition, there
- are both normal and network-specific debugging flags for still more useless
- information.
-
-
- 13.2.1 The call-log
-
- The call-log is kept in the file `calllog.sys', which is stored in your
- #auditdir. It records information about callers, file downloads that may
- occur, and system up/down times. It can be defined to document any or all
- of these things; see `ctdlcnfg.doc' for precise directions on how. Suffice
- it to say that if you define the `ctdlcnfg.sys' variable call-log to be
- `1', it will cause a call-log to be kept, documenting system up/down times
- as well as caller information, but not file downloads.
-
- When the system is brought up, a line of the form
-
- System brought up <date> @ <time>
-
- will be written to `calllog.sys'. When the system is taken down,
-
- System brought down <date> @ <time>
-
- will be written. And when a user has called, you'll see a line of this
- form:
-
- <username> : <date> <in> - <out> (<baud>) [flags]
-
- The meanings are as follows:
-
- username is the name of the user;
-
- date is the date on which he/she called;
-
- in is the user's login time;
-
- out is the user's termination time;
-
-
-
- Chapter 13: Miscellaneous 153
-
-
-
-
- baud is the baud rate at which the call was made, or ``console'' if
- the login was from the Console;
-
- flags documents anything unusual about the call. The following flags
- are defined:
-
- + New user.
-
- R User was denied access to the system due to
- a login restriction (see Section 10.2.11 [Login
- restrictions], page 139).
-
- P The user was punted off by the use of the [P]oll
- command from the Sysop's Net menu.
-
- e An event punted the user off (see Chapter 7 [Events],
- page 93).
-
- t The user timed out (meaning that he went for about 3
- minutes without hitting a key).
-
- k The user was Killed while online (see [K]ill user in
- Section 5.2 [User Status Commands], page 80).
-
- p The user did a .T(erminate) P(unt), which restores
- all of his non-vital settings to their pre-call
- state.
-
- s The user did a .T(erminate) S(tay). This means that
- he logged off without hanging up; this is a good clue
- as to the identity of the next person to login.
-
- G A user on the Console was kicked off when carrier was
- detected; this happens if you're on the Console and
- you use `^L M' instead of [T]erminate.
-
- D The user unceremoniously disconnected without using
- [T]erminate. This doesn't hurt anything, but it's
- bad style.
-
- E The user was an ``EVILE'' user; he entered more
- than a tolerable number of consecutive bad commands,
- meaning that either
-
- 1. he's *really* clueless, or
-
- 2. he had extreme line noise problems.
-
- r The user was punted by having the modem reinitialised
- on him; this is accomplished by using [R]einitialise
- from the Sysop menu.
-
- c The user called, but was denied access to the
- system due to exceeding the maxcalls limit; see
- Section 10.2.4 [Calls per day], page 135.
-
-
-
- Chapter 13: Miscellaneous 154
-
-
-
-
- T The user was denied access due to having exceeded the
- maxtime limit; see Section 10.2.5 [Connect time per
- day], page 135.
-
- C The user was denied access due to having exceeded the
- maxclosecalls limit; see Section 10.2.6 [Close calls
- per day], page 136.
-
- The call-log is one of the few things in Fnordadel that are not
- self-maintaining; it will continue to grow indefinitely, so it needs to be
- periodically deleted. You may wish to use the utility program callstat
- to process your call-log and generate some statistics about your system's
- usage. See `callstat.man' for details.
-
-
- 13.2.2 The file-log
-
- If you have the `ctdlcnfg.sys' variable audit-files set to `1', the
- system will keep a log of user file downloads from your system. The log is
- kept in a file called `filelog.sys', located in your #auditdir.
-
-
-
- 13.2.3 The net-log
-
- If you have the `ctdlcnfg.sys' variable netlog defined, or if you invoke
- citadel with `+netlog' on the command line, Fnordadel will keep a log
- of all network activity in a file called `netlog.sys', located in your
- #auditdir. Most of the junk that gets printed to the screen during any
- networking is written to this file, so you'll have a pretty good idea of
- what your system's been up to. If you do any long-distance networking,
- it's probably a good idea to watch this file regularly to keep tabs on mail
- transfers, failed calls, and anything else that costs you money.
-
- As with the call-log, the net-log can get quite large quite quickly, so
- keep an eye on it and nuke it every now and then. If you find yourself
- never looking at it, you may simply wish to stop telling Fnordadel to keep
- it. If you're not running with a hard drive, you probably won't have room
- for this file.
-
-
- 13.2.4 Debugging
-
- Ah yes, debugging---we know it's our favourite! Fnordadel has a couple
- of debugging options which can be specified on the command line to citadel
- or can be defined in `ctdlcnfg.sys' (as with netlog above). They are debug
- and netdebug.
-
- debug causes seemingly random debugging stuff to be printed out at
- seemingly random times; it won't affect the operation of the board at all,
- though.
-
- netdebug operates on network things; you'll notice that still more
- junk will get printed on the screen (and written to `netlog.sys' during
- networking when you have this turned on.
-
-
-
- Chapter 13: Miscellaneous 155
-
-
-
-
- In general, you shouldn't have to worry about stuff like this, but if
- you're having a problem and we tell you to turn debugging on to help track
- it down, you'll know what to do.
-
-
- 13.2.5 Crashes
-
- Sadly, your Fnordadel will probably crash on you at some point. You'll
- come up to the system, switch on the monitor, and see the screen come
- to life showing the GEM desktop or your favorite command shell, not your
- Fnordadel! Aie! What to do?
-
- Happily, most crashes encountered by Fnordadel can be semi-gracefully
- handled. This means that the system is able to write out the
- `ctdltabl.sys' file and prevent you from having to reconfigure your system.
- You should be able to start right back up if you see that `ctdltabl.sys' is
- there.
-
- Just to be on the safe side, though, Fnordadel will stick a message
- about the crash in a file called -- oddly -- `crash'. This file lives in
- the same directory as `ctdltabl.sys', so look for it and read it if it's
- there. There's an outside chance it might tell you something useful. If
- your system crashes and you can't find a crash file, that means the crash
- was a bad one. `ctdltabl.sys' probably won't be there either, so you'll
- have to reconfigure things. It would probably be in your best interest to
- reboot your system as well.
-
-
-
- 13.3 Help Files
-
- One of the standard system directories defined in `ctdlcnfg.sys' is
- #helpdir; it's where the help files, menus and ``blurbs'' go. These files
- are all just standard ASCII text, and are therefore freely editable by the
- Sysop. We think the set provided with Fnordadel is pretty good, but
- nothing is above improvement.
-
- In general, the files ending in `.mnu' (the menus) and `.blb' (the
- ``blurbs'') should not be deleted or renamed, because Fnordadel looks for
- them specifically. Most of the files ending in `.hlp', however, are not
- bound by any such restriction, and may be renamed or disposed of at will.
- Exceptions are:
-
- `dohelp.hlp'
- general novice help; called by [H]elp
-
- `policy.hlp'
- system policy; force-fed to new users on their first call
-
- `summary.hlp'
- extended command summary; called by `.?'
-
-
-
- Chapter 13: Miscellaneous 156
-
-
-
-
- `topics.hlp'
- the main hot-helps menu; called by .H(elp) ?
-
- In order to customize your system, you may create any number of `.hlp'
- files, and integrate them with the online help system (see Section 13.3.1
- [Hot-help system], page 156). You will also want to edit some of the
- other help files provided. In particular, most of the `.blb' files should
- be looked at and changed as required, and `policy.hlp' and `localbbs.hlp'
- should be modified. The `.mnu' files should never need any modifications.
-
-
- 13.3.1 The hot-help system
-
- Any text file you like can be displayed by the .H(elp) command if it is
- in the #helpdir directory, ends with the extension `.hlp', and your users
- can find out its name. However, if your help files contain special codes,
- they can be made to point to other (hopefully related) help files. This is
- encoded in a help file by placing lines of this form in it:
-
- %topic<tab>Description
-
- The name topic must correspond to a help file ending in `.hlp', i.e.
- `topic.hlp'. All % lines in a file will be assigned a letter, and when the
- help file has finished printing out, the user will be prompted to enter a
- letter corresponding to the further help file he wishes to read. Don't put
- too many % lines in any given file, though, or the first few will scroll
- off the top of the screen before the prompt appears.
-
- Another thing you can do in the `.hlp' files is specify lines of the
- form
-
- %%Some text of your choice
-
- to give the help system the cue that `Some text of your choice' should
- be displayed while and *only* while it is processing the `.hlp' file in
- hot-help mode. Some `.hlp' files (e.g. `policy.hlp' and `summary.hlp')
- are called up both in the hot-help system and somewhere else, where the
- menu-handling procedure is not done. The %% lines, which you can use as
- headings or what have you, will thus appear when the file is being used
- as a menu, and disappear when it is being used as a one-shot display of
- information.
-
- An example will make this easier to figure out. Suppose that we
- have a help file called `society.hlp' (let's say we run a non-profit
- organisation...) This file might say something like this:
-
- The Foobar Non-Profit Society Creed:
- We are dedicated to being our society.
-
- %%For more information on the Non-Profit Society, see:
-
- %MEETINGS Times and locations of upcoming meetings.
- %MEMBERS The most recent membership list.
- %GOSSIP Neat new gossip from our members.
-
- When the user types
-
-
-
- Chapter 13: Miscellaneous 157
-
-
-
-
- .H(elp) society
-
- he or she will see:
-
- The Foobar Non-Profit Society Creed:
- We are dedicated to being our society.
-
- For more information on the Non-Profit Society, see:
-
- [A] MEETINGS Times and locations of upcoming meetings.
- [B] MEMBERS The most recent membership list.
- [C] GOSSIP Neat new gossip from our members.
-
- Select [A-C] or [RETURN] to exit:
-
- If, for some reason, the file `society.hlp' was ever displayed to the user
- by one of the other help mechanisms in the code he or she would see the
- following:
-
- The Foobar Non-Profit Society Creedo:
- We are dedicated to being our society.
-
- At this point the user will do as instructed, we hope. Using the
- hot-help system carefully allows you to construct a hierarchical sort of
- help system; see the distribution help file set for an example of this.
-
-
- 13.3.2 BLurB files
-
- The following `.blb' files are referenced by Fnordadel. If they aren't
- present, your users will probably see a little error message which says `No
- help file <whatever>'. Or we may have had the foresight to build in a
- hard-wired message that actually means something sensible.
-
- `banner.blb'
- The opening banner; spit out to users when they first connect
- with your system.
-
- `banner.n'
- The optional rotating banner files, `banner.1' through
- `banner.n'.
-
- `deny.blb'
- Used only if you're running a closed system (loginok is `0').
- It is shown to new users; it should say something about how new
- users need to leave the Sysop mail to get an account.
-
- `entry.blb'
- This is printed for non-Expert users when they are about to
- enter a message; it should say stuff about how the formatter
- works and so on.
-
-
-
- Chapter 13: Miscellaneous 158
-
-
-
-
- `fakeerr.blb'
- This is displayed to remote users when the Sysop hits the `^E'
- command on the console. Say what you like, but if you're
- courteous, you'll put something in that's suitably apologetic
- for your cavalier butchering of the user's login session.
-
- `logout.blb'
- A message printed after a user .T(erminate)s from the system,
- just before carrier is lost.
-
- `maxcalls.blb'
- A message given to users who are denied system access due to
- exceeding the maxcalls limit; see Section 10.2.4 [Calls per
- day], page 135.
-
- `maxclose.blb'
- This message is given to users who are denied system access due
- to exceeding the maxclosecalls limit; see Section 10.2.6 [Close
- calls per day], page 136.
-
- `maxmsg.blb'
- A message given to users who try to enter more messages in
- a room than allowed by the msgenter or mailenter limits; see
- Section 10.2.2 [Messages per room per call], page 134, and
- Section 10.2.3 [Mail messages per call], page 135.
-
- `maxtime.blb'
- A message given to users who are denied system access due to
- exceeding the maxtime limit; see Section 10.2.5 [Connect time
- per day], page 135.
-
- `newroom.blb'
- Printed whenever a non-Expert enters a new room.
-
- `nochat.blb'
- This is shown to any user who asks for a Chat while you have
- chat mode turned off.
-
- `notice.blb'
- After a user logs in but before he reaches the room prompt, he
- will be shown this file.
-
- `password.blb'
- This blurb is shown to new users just before they select a
- password; it should say something about picking something not
- easily guessed.
-
- `restrict.blb'
- A ``we're closed, call back later'' message used when a login
- restriction results in a user being barred from using the
- system.
-
-
-
- Chapter 13: Miscellaneous 159
-
-
-
-
- 13.3.3 MeNU files
-
- The following `.mnu' files are referenced by Fnordadel. They are
- printed out whenever a user hits a question mark at various points. There
- should never be any need to change them; they may be updated by us as new
- features are added to Fnordadel. As with `.blb' files, if they aren't
- present, your users will probably see a little error message which says
- ``No help file <whatever>''.
-
- `aide.mnu'
- .A(ide) ?
-
- `aideedit.mnu'
- `?' from the .A(ide) E(dit) menu, where the user logged in is
- only an Aide and not the Sysop or a Co-Sysop
-
- `aideflr.mnu'
- ;A(ide) ?
-
- `browser.mnu'
- `?' from the browser prompt
-
- `config.mnu'
- `?' from the .E(nter) C(onfiguration) prompt
-
- `ctdllist.mnu'
- `?' from the purge or restrict prompts
-
- `ctdlopt.mnu'
- `?' from the main Sysop menu (`^L')
-
- `ctdlstat.mnu'
- `?' from the user status menu (`^L U')
-
- `edit_inf.mnu'
- `?' from the room info editor
-
- `edit_msg.mnu'
- `?' from the message editor
-
- `entopt.mnu'
- .E(nter) ?
-
- `floor.mnu'
- `;?'
-
- `known.mnu'
- .K(nown) ?
-
- `lobbedit.mnu'
- `?' from the .A(ide) E(dit) menu, where the user logged in has
- Sysop or Co-Sysop status and the room being edited is Lobby>
-
- `logout.mnu'
- .T(erminate) ?
-
-
-
- Chapter 13: Miscellaneous 160
-
-
-
-
- `mainopt.mnu'
- `?' from the room prompt
-
- `more.mnu'
- `?' from a .R(ead) M(ore) prompt (`More? ')
-
- `netedit.mnu'
- `?' from the net node edit menu (`^L N E')
-
- `netopt.mnu'
- `?' from the net menu (`^L N')
-
- `readopt.mnu'
- .R(ead) ?
-
- `roomedit.mnu'
- `?' from the .A(ide) E(dit) menu, where the user logged in has
- Sysop or Co-Sysop status
-
- `specedit.mnu'
- `?' from the .A(ide) E(dit) menu, where the user logged in has
- Sysop or Co-Sysop status and the room being edited is Aide>
-
-
-
- 13.4 Curious Feeps
-
- This is the *really* miscellaneous section---a place for stuff so
- miscellaneous, it doesn't even deserve a section of its own.
-
-
- 13.4.1 Uppercase elimination
-
- The system converts messages from upper-case-only folks to lower-case,
- then does a simple capitalization algorithm. This is lots easier on the
- eyes of those who actually read messages. This feature does, however, trip
- up people who actually *intended* a message to be all upper-case.
-
- If you include even one lower-case character in a message, the
- conversion and capitalisation thing will not be done, so a standard trick
- is to put a lower-case L (`l') in place of a `1' somewhere. I've seen
- people do this l0 times, just to be sure! (Credit where credit is due --
- we didn't put this one in, it came with STadel, but was probably put in by
- Hue, Jr. in Citadel-86, or even CrT in the original CP/M Citadel.)
-
-
- 13.4.2 <fnord>s
-
- Fnordadel is a somewhat whimsical piece of software. Some of its
- features have been hacked in on the spur of the moment; others just seemed
- to materialise. The authors' primary reason for working on the software
- at all is just ``because it's neat''. So, we occasionally break from
- ``serious hacken'' and put in bits of silliness or weirdness. The <fnord>
- feature is one such bit.
-
-
-
- Chapter 13: Miscellaneous 161
-
-
-
-
- <fnord> is a subliminal trigger word, and since BBSes are the ideal
- forum for perpetuating subliminal messages, we've thoughtfully bound the
- `P' key (at the room prompt level) to the <fnord>s.
-
- Simply put a file called `fnord.sys' in your #sysdir. It should contain
- a list of silly sayings, one per line, which will be chosen from at random
- and spit at the user when he (always mistakenly) hits `P'. The size of
- `fnord.sys' is practically unlimited, but it is all loaded into RAM when
- Fnordadel starts, so be very careful. Anyway, say your `fnord.sys' has the
- following lines:
-
- send money
- read my lips
- no newt axes!
- the Sysop's a babe
-
- Depending on the state of some random bits inside the machine, a user
- hitting `P' might see
-
- <fnord><no newt axes!>
-
- and will suddenly begin to wonder whether Mr Bush ever said anything about
- ``Taxes''. Or he might see
-
- <fnord><the Sysop's a babe>
-
- in which case you can expect a proposition in Mail>. Or, best of all, he
- might see
-
- <fnord><send money>
-
- and, if you've thoughtfully put your mailing address in, say, a help file
- (or perhaps in another <fnord>), the money will roll in. Neat, huh?
-
- To disable <fnord>s, if you don't like 'em, just get rid of the
- `fnord.sys' file.
-
-
- 13.4.3 User timeouts
-
- It's an annoying thing to have users monopolize your system for large
- chunks of time, but it would be even more annoying if they did so by
- spending long minutes idly sitting at a command prompt somewhere. To
- prevent this, Fnordadel has a timeout feature that it inherited from
- STadel: if a user's session is idle (i.e. no screen or keyboard activity)
- for 3 minutes or so, the system will print a cutesy message and log him/her
- off. This timeout can also apply to console users such as the Sysop, if
- you wish it. See the sysopsleep parameter in `ctdlcnfg.doc'.
-
-
-
- Chapter 13: Miscellaneous 162
-
-
-
-
- 13.4.4 New user message viewing
-
- Another annoying thing is having a new user call in (at 300 baud,
- too, wouldn't you know it!) and read every message in every room on
- your system. Argh! Well, there is a `ctdlcnfg.sys' parameter called
- newusermsgs which lets you set how many messages the system will think are
- new to each new user calling in. It defaults to `50' if you don't set
- it otherwise. If you set it to `0', all messages will be new. This
- variable helps the user's first call to get him/her the gist of what's
- being discussed, without swamping her/him with an overload of info, or
- crippling your system with massive connect times. Of course, it doesn't
- help on subsequent calls...
-
-
- 13.4.5 User configuration defaults
-
- We had a request to allow the Sysop to set default values for some
- of the user configuration values that new users aren't asked about if
- they claim not to be Citadel experts. To that end, there are currently
- several `ctdlcnfg.sys' flags that you can diddle to give your novice
- users the ``correct'' combination of features: defshowtime, deflastold,
- deffloormode, defreadmore, defnumleft and defautonew. See `ctdlcnfg.doc'
- for more.
-
-
-
- 13.4.6 Status line
-
- One of the most popular additions orc made to STadel was the status
- line, an inverse mode, non-scrolling line of user information placed at the
- bottom of the console screen. It is activated by invoking citadel with the
- +line option. This gets you at-a-glance information about an online user,
- including user name, current room, time of login, current time, and some
- flags.
-
- The flags consist of `R', which indicates a Sysop console request is
- pending (see Section 5.3.1 [Special keys], page 83); `T', which indicates
- the current user is a twit (see Section 5.3.1 [Special keys], page 83,
- see Section 2.1 [Your Callers], page 14); `C', which indicates chat mode
- is currently enabled (see Section 5.1 [Sysop Special Functions], page 75);
- and `*', which indicates that the user has an unanswered chat request
- outstanding.
-
- If the status line is not active, Fnordadel will display some
- information about the user just before each room prompt as the user moves
- about the system. This information is shown only on the console.
-
-
-
- Chapter 13: Miscellaneous 163
-
-
-
-
- 13.4.7 Rotating banners
-
- We received several requests to implement __rotating banners__,
- something Hue, Jr. recently put into his Citadel-86. Figuring we'd
- already blown any possible reputation for seriousness, we figured ``what
- the heck'', and here they are.
-
- To use rotating banners on your system, create a number of files called
- `banner.1', `banner.2', `banner.3', etc. in your #helpdir directory.
- Leave the existing `banner.blb' file there. Then define the `ctdlcnfg.sys'
- parameter #numbanners to be the number of banners you want to rotate
- through. You can set the parameter #bannerblb to `1' if you want the
- system to display `banner.blb' following the rotating banner it picks at
- random, or to `0' if the rotating banner files should stand alone.
-
-
-
- 13.5 File Locations
-
- The following is a more-or-less complete list of where Fnordadel expects
- to find which files (or where you can find files that Fnordadel deposits).
- Don't shoot us if we've missed one, though.
-
- #auditdir
-
- `calllog.sys'
- The call-log
-
- `filelog.sys'
- The user file transfer log
-
- `netlog.sys'
- The network activity log
-
- `debuglog.sys'
- The debugging log
-
- `chat.rec'
- Text from captured Chat sessions
-
- `sysop.msg'
- Where archived Sysop mail goes (if enabled)
-
- `callstat.sys'
- Useful statistics written by callstat
-
- `callbaud.sys'
- Supplementary useful statistics from callstat
-
- #helpdir
-
- *.hlp Help files
-
- *.mnu Menus
-
- *.blb ``Blurbs''
-
-
-
- Chapter 13: Miscellaneous 164
-
-
-
-
- #holddir
-
- `holdnnnn'
- Held message for user #nnnn
-
- #msgdir
-
- `ctdlmsg.sys'
- The message base
-
- #netdir
-
- `ctdlnet.sys'
- The net-list
-
- `ctdlloop.zap'
- The loop-zapper database
-
- `ctdlpath.sys'
- Path alias definitions
-
- `dial_n.prg'
- External dialer programs
-
- `n.ml' Semi-temporary files for net-mail to node #n
-
- `n.nfs' Semi-temporary files for file sends/requests for node
- #n
-
- `n.fwd' Semi-temporary files for mail forwarding to node #n
-
- `xxxxxxx.dis'
- Discard message files
-
- #roomdir
-
- `roomnnnn.sys'
- The room files (where nnnn = 0000 to (maxrooms - 1))
-
- `roomnnnn.inf'
- The optional room info files (where nnnn = 0000 to
- (maxrooms - 1))
-
- #sysdir
-
- `citadel.lck'
- Lockfile used by citadel and many others; helps
- prevent dangerous collisions when using doors or a
- multi-tasking system.
-
- `ctdllog.sys'
- The user log
-
- `ctdlflr.sys'
- The floors file
-
-
-
- Chapter 13: Miscellaneous 165
-
-
-
-
- `ctdldoor.sys'
- Door definitions
-
- `ctdlarch.sys'
- Room archiving information
-
- `alias.sys'
- Shared room aliasing definitions
-
- `purge.sys'
- List of users to whom the purge feature will apply
-
- `restrict.sys'
- List of users to restrict login to
-
- `fnord.sys'
- Silly sayings for the `P' key
-
- `calldata.sys'
- Cumulative data maintained by callstat
-
- `checkpt.sys'
- Checkpoint file for configur
-
- In addition, a few files are expected to live in Fnordadel's home
- directory (i.e., the directory in which Fnordadel is run). These are:
-
- `ctdltabl.sys'
- The system tables file; needed by almost everything, including
- citadel. Regenerated by configur.
-
- `crash' If there's been a crash and Fnordadel saw it coming, this is
- where it puts a report.
-
-
-
- 13.6 Multitasking and Fnordadel
-
- Some time before orc ceased work on STadel, he made some modifications
- to it to make it operate a little nicer in a multi-tasking environment
- on the Atari ST. The multi-tasker he specifically tested was AMULTI, but
- MX2, MiNT and Multi-GEM are three others we know of as of this writing.
- The first three are public domain, all four should be used only if you
- know what you're doing, and none of them is guaranteed to work properly or
- reliably with Fnordadel, since we've never done a lick of work to make
- sure Fnordadel will live properly with them. However, it's on our list
- of things to do when we get time, so don't hesitate to send reports of
- your experiences with Fnordadel and multitasking. Any information we can
- get from out there will make us that much better prepared to tackle any
- problems there may be.
-
- To activate Fnordadel for use in a multi-tasking environment, as a
- background process, invoke citadel with the option `+multi', and using
- whatever mechanism your multitasker needs to indicate a background process.
- (See the options section of `citadel.man'.) At this point in time, all
- this option does is basically shut off Fnordadel's screen output so that
-
-
-
- Chapter 13: Miscellaneous 166
-
-
-
-
- the display doesn't get messed up while you're doing other things, and make
- the system ignore keyboard input from the console. All other activities
- continue as normal, including networking.
-
- Once Fnordadel is running in the background, you will probably want to
- bring it to the foreground at some point. At the very least, you will
- have to do this when you want to shut Fnordadel down, since the only way
- to properly take the system down is using the `^LQ' command. To reconnect
- Fnordadel to the console, run the utility sysop, which tells the system to
- listen up. Fnordadel will once again display things on your monitor and
- listen to the keyboard. See `sysop.man'.
-
- To send the system back into the background again, you can hit `^Z' at
- the console. Fnordadel will stop displaying to the screen and taking input
- from the console keyboard. Make sure you're logged out and the system is
- back in modem mode when you do this! See Section 5.3.1 [Special keys],
- page 83, for more info about `^Z'. Also see Section 8.1.3.4 [Special net
- keys], page 103.
-
- Most Fnordadel utility programs that need to update `ctdltabl.sys', or
- other system files, will check for the existence of the `citadel.lck'
- file that was mentioned briefly in the last section. If the file is
- present, the utility will abort, otherwise it will go ahead and do its
- thing. *Be warned*, however, that there may be a utility or three that
- doesn't behave properly in this regard. Thus if you are running Fnordadel
- in the background, be very careful to avoid clobbering something by running
- Fnordadel updating utilities at the same time.
-
-
-
- 13.7 Fnordadel vs. STadel
-
- This section is for those of you who are converting up from STadel. If
- you aren't converting, you can read it for trivia, or ignore it. We have
- developed a converter program to take STadel 3.3d systems to the current
- version of Fnordadel, hopefully preserving all important system files. See
- the `conv33d.doc' document for details on conversion.
-
- Since Fnordadel is directly descended from STadel 3.3b, with many pieces
- borrowed from STadel 3.4a (which never got released, that we know of), most
- of the things you liked about STadel will still be here. We added this
- section mainly because many of you who convert will probably notice right
- away that some things, such as running configur or saving messages, seem
- slower with Fnordadel. You're not imagining things, and before you get
- homicidal or erase Fnordadel from your system, we want to explain.
-
- Some of you may have noticed that the slow-down seems related to
- room-oriented operations. If so, you hit the nail on the head. From the
- conversion process, you'll know there is a big difference in how rooms are
- done. This is what causes the speed difference as well, and is the only
- aspect in which Fnordadel is slower than STadel. Hopefully we can temper
- the shock with good reasons for the change.
-
- STadel (and other Cits) use a single file to store rooms, called
- `ctdlroom.sys'. The file is opened once when the system starts, and
- closed once when it exits. All rooms occupy a fixed-size record in
-
-
-
- Chapter 13: Miscellaneous 167
-
-
-
-
- `ctdlroom.sys', and accessing the records requires seeking to the record,
- followed by one read or write operation to transfer all the room's data.
-
- Some time ago, we got sick and tired of the 58 messages per room limit,
- along with all the other limits (64 rooms per system, 16 shared rooms per
- net node, etc.) We got rid of them all in a similar fashion to Hue, Jr.'s
- method of eliminating the limits in Citadel-86, by allowing the Sysop to
- define the limits himself in `ctdlcnfg.sys', and alter them on the fly with
- various utility programs. With the messages per room limit, however, we
- chose a different approach.
-
- Any fixed number of messages per room, we reasoned, will be inefficient
- since there will rarely-approaching-never be exactly that number of
- messages in any room. If there are too few messages, the extra space
- in the room record will be wasted, while if there are too many messages,
- they can't all fit and thus you'll have space in `ctdlmsg.sys' wasted by
- messages that nobody can ever see.
-
- We therefore decided to make the room records vary in size so they are
- always exactly as big as required to fit the number of messages really in
- each room. No more wasted space in the room records, and no more wasted
- space in the message file. Unfortunately, we could no longer store the
- room records in one file, since their varying size would be practically
- impossible to deal with in the confines of a single file.
-
- Consequently, we broke the room file up into one file per room, each
- now able to be whatever size required to store the number of messages in
- it. This gave us the desired space efficiency. It also improved damage
- control; with STadel, a bad sector or corrupted room record would wipe out
- the whole `ctdlroom.sys' file. Since the file can't be regenerated by
- configur, the effect was to lose your entire message base even though the
- `ctdlmsg.sys' file was perfectly intact! Now with Fnordadel, a bad sector
- or corrupted room record causes the loss of only one room, not the entire
- message base.
-
- Sadly, the improved space efficiency and security has a price. No
- longer do we have the single room file, which is opened once, closed once
- and accessed via one read or write operation per room. Now, with one file
- per room, each file must be opened and closed each time it is accessed (we
- can't have them all open at once; TOS has limits on this kind of thing).
- This opening and closing takes time. Also, we can't use a single read or
- write to access the room record, since it varies in size. We first read or
- write the fixed-size part of the record (name, status flags, etc.), then
- the variable-sized part (message pointers). This double read/write also
- takes extra time.
-
- The net result is a common one: to improve efficiency, you sacrifice
- speed, and vice versa. We're working on ways to get every extra jot of
- speed out of the new code, but it will probably always be slower than the
- older method. One thing that will help speed it up is to throw the
- #roomdir directory onto a small RAM disk. If you do this, make sure you
- back up the directory to disk regularly, either manually or using a command
- shell and automated scripts. If you choose not use the RAM disk, take some
- comfort in knowing that the slower room access times are not for nothing,
- they are buying you much increased space efficiency and system reliability.
-
-
-
- Chapter 13: Miscellaneous 168
-
-
-
-
- 13.8 Compatibilities, Incompatibilities, and Fixes
-
- This section is for miscellaneous facts we've come across that could
- affect your Fnordadel due to other products' behavior.
-
- o Turbo ST, a commercial display accelerator, causes the Fnordadel status
- line to freak out. We don't know of any version of Turbo ST that works
- properly. Our advice is to get ahold of a program called Quick ST, by
- Branch Always Software. It's what we use, and it works great. (See
- Section 13.1 [Things to Make Fnordadel Work or Work Better], page 151.)
-
- o We've heard a lot of reports about various doors (usually games)
- that do not work properly, but we're usually unable to discover any
- particular problems since we don't run many doors ourselves. If you
- have trouble with a door that is publicly available, the best approach
- is to send us a copy of it along with detailed instructions on how to
- duplicate your troubles. Then we'll see if we can fix things. If you
- can't send us the door for some reason, send us a detailed description
- of your problem, and we might be able to figure out what's going on
- anyway. If you're writing your own doors and run into trouble, send us
- your code (if you're programming in C), or your executable program (if
- you're programming in anything else), and we'll look into it.
-
- o As reported by kbad@Virtuality, Fnordadel appears to work like a charm
- on the Atari TT030. So if your ego requires you to have the hottest
- Fnordadel this side of Virtuality, run out and buy a TT for yourself.
-
- o So-called ``packer'' programs are popular here and there, especially
- with users running without the Amazing Benefits of a hard drive. These
- packers compress other executable programs just like archiving programs
- such as LHarc, Arc and Zoo. The difference is that the compressed
- programs can still be run as before, with the nicety that they take
- much less disk space to store. The only cost is that they take
- slightly more time to load and execute, since they must uncompress
- themselves on the fly.
-
- For users running on floppy drive(s), and finding that space is a
- problem, we have two comments. First, space is always a problem, even
- with a hard drive. Second, get ahold of a packer program from your
- favorite Atari ST file transfer board, and try it out on the Fnordadel
- programs and utilities. We don't guarantee that they will pack, or run
- properly if packed, but it's worth a try.
-
-
-
- 13.9 Beta Releases of Fnordadel
-
- We put Fnordadel out in ``releases'', rather than small, random upgrades
- to different programs. However, the large majority of the releases are
- ``beta'', i.e. they have some deficiency, and we don't necessarily
- want everybody under the sun to take that version and start running it.
- Normally, beta releases are sent to a select few ``beta sites'', run
- by Sysops who understand and accept the risks involved with running beta
- software that might have problems. They have agreed to actively help us
- solve any problems that come up in the code they run, and we fully expect
- them to give us detailed bug descriptions (not ``It doesn't work!''), try
-
-
-
- Chapter 13: Miscellaneous 169
-
-
-
-
- out new things we've put in to see if they work, and give us general
- feed-back whether we ask for it or not.
-
- Up until now, we have been pretty slack about who gets the beta
- releases. We have a small number of beta sites that we deal directly with,
- but if other people really want to run the beta versions, they can do so,
- providing they can get ahold of them somewhere. Anybody who gives out a
- beta release to a non-beta site is expected to clearly communicate that the
- software is *not* of public, production quality, and also that the manuals
- frequently have not been updated to reflect all changes. We do not make
- any kind of guarantees to anybody who runs a beta release that they got
- from somebody besides us.
-
-